1. Field of the Invention
The present invention relates to the field of software functional testing and more particularly to global verification testing for source strings used when functional testing a user interface to a computer program.
2. Description of the Related Art
Software functional testing relates to the functional testing of a graphical user interface (GUI) coupled to an underlying software application. Conventional functional testing tools allow the end user to create, modify and run functional, distributed functional, regression and smoke tests for applications built using any of a wide variety of integrated development environments. In this regard, the conventional functional testing tool can generate a test script for a GUI in which elements of the GUI can be exercised both sequentially and conditionally. Through a thorough testing of the GUI of an application, the functional testing tool can automatically identify defects early, often and repeatably.
In operation, the conventional functional testing tool can monitor and record the interaction between end user and GUI during a recording phase of functional testing. In this regard, a testing script can be produced based upon the identity of GUI elements addressed by the end user and the sequence in which the GUI elements are addressed. Within the script, GUI elements, referred to herein as “objects”, can be identified by absolute reference to each object. The absolute reference can include any number of element properties which, when combined with one another, can uniquely identify the desired object. Properties can include any explicit object property such as a data or method member, or any metadata associated with the object. Examples can include the class index, the accessible role, the object position, associated text, class name, and child and parent element identity, just to name a few.
Global verification testing (GVT) is an aspect of software testing in general that strives to validate translated strings in a specific spoken language for a computer program. Oftentimes, GVT for validating strings in a target GUI of an application under test is performed manually through the drafting of a script in a native spoken language of different use cases intended to traverse the target GUI to test usability while visually distinguishing translated elements of the target GUI. The manual validation of the target GUI for internationalization, however, is a tedious process and can be expensive to boot. Generally, the manual validation of the target GUI requires language experts cooperating with software developers in order to adequately test the functionality of the target GUI across different languages.
Recognizing the deficient nature of manually performing GVT, advanced functional testing tools provided for an automated GVT process. Exclusively, in automating GVT for functional testing, the functional testing tool requires the end user to provide Unicode formatted source strings for control elements in a source GUI of an application that can be subsequently encoded into different spoken languages for different locales in a target GUI for the application. Yet, to provide for Unicode formatted strings in functional testing also can be problematic and unnatural for those using the functional testing tool. As such, a need remains to provide for automated GVT in functional testing a GUI of an application under test using source strings encoded in a native spoken language.